package dto;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class DTOCliente implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int codigo;
	private String nombre;
	private String cuit;
	private String direccion;
	private String telefono;
	private DTOCondicionTributaria condicionTributaria;
	private DTOOficinaVentas oficinaVenta;
	private List<DTOCondicionDePagoCliente> condicionesDePago;
	private List<DTODescuentoCliente> descuentos;
	private List<DTOCotizacion> cotizaciones;
	private List<DTOPedidoCliente> pedidoClientes;
	

	
	public DTOCliente(Integer codigo, String nombre, String cuit,
			String direccion, String telefono) {
		super();
		this.codigo = codigo;
		this.nombre = nombre;		
		this.cuit = cuit;
		this.direccion = direccion;
		this.telefono = telefono;
		

	}
	public int getCodigo() {
		return codigo;
	}
	public void setCodigo(int codigo) {
		this.codigo = codigo;
	}
	public DTOCondicionTributaria getCondicionTributaria() {
		return condicionTributaria;
	}
	public void setCondicionTributaria(DTOCondicionTributaria condicionTributaria) {
		this.condicionTributaria = condicionTributaria;
	}
	
	public DTOOficinaVentas getOficinaVenta() {
		return oficinaVenta;
	}
	public void setOficinaVenta(DTOOficinaVentas oficinaVenta) {
		this.oficinaVenta = oficinaVenta;
	}
	
	public List<DTODescuentoCliente> getDescuentos() {
		return descuentos;
	}
	public void setDescuentos(List<DTODescuentoCliente> descuentos) {
		this.descuentos = descuentos;
	}
	public DTOCliente(){
		condicionesDePago = new ArrayList<DTOCondicionDePagoCliente>();
		descuentos = new ArrayList<DTODescuentoCliente>();
	}

	public String getCuit() {
		return cuit;
	}

	public void setCuit(String cuit) {
		this.cuit = cuit;
	}

	public String getDireccion() {
		return direccion;
	}

	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getTelefono() {
		return telefono;
	}

	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}

	public List<DTOPedidoCliente> getPedidoClientes() {
		return pedidoClientes;
	}

	public void setPedidoClientes(List<DTOPedidoCliente> pedidoClientes) {
		this.pedidoClientes = pedidoClientes;
	}

	public List<DTOCotizacion> getCotizaciones() {
		return cotizaciones;
	}

	public void setCotizaciones(List<DTOCotizacion> cotizaciones) {
		this.cotizaciones = cotizaciones;
	}

	public DTOCondicionDePagoCliente obtenerCondicionDePago(Integer codigoCondicionDePago)
	{
		Iterator<DTOCondicionDePagoCliente> i = condicionesDePago.iterator();
		while(i.hasNext())
		{
			DTOCondicionDePagoCliente item = i.next();
			if (item.getCodigo().equals(codigoCondicionDePago))
				return item;
		}
		return null;
	}
	
	public DTODescuentoCliente obtenerDescuento(Integer codigoDescuento)
	{
		Iterator<DTODescuentoCliente> i = descuentos.iterator();
		while(i.hasNext())
		{
			DTODescuentoCliente item = i.next();
			if (item.getCodigo().equals(codigoDescuento))
				return item;
		}
		return null;
	}
	public List<DTOCondicionDePagoCliente> getCondicionesDePago() {
		return condicionesDePago;
	}

	public void setCondicionesDePago(List<DTOCondicionDePagoCliente> condicionesDePago) {
		this.condicionesDePago = condicionesDePago;
	}
}
